import request from "@/utils/base_request.ts";

/**
 * 获取总文件列表
 *
 * @returns {Promise} 文件列表的Promise对象
 */
export function getSumFile(pid: String): Promise<any> {
    return request({
        url: `merge/sumFile/${pid}`,
        method: "get",
    });
}

/**
 * 删除指定文件ID的文件
 * @param fileId 文件ID
 * @returns Promise<any> 返回一个Promise对象，表示异步操作的结果
 */
export function deleteFileByFileId(fileId: String): Promise<any> {
    return request({
        url: `merge/fakeDelete/${fileId}`,
        method: "post",
    });
}

/**
 * 新建文件夹
 * @param data 文件夹数据
 * @returns 请求结果
 */
export function createFolder(data: any): Promise<any> {
    return request({
        url: `merge/newFolder`,
        method: "post",
        data,
    });
}

/**
 * 下载文件
 * @param fileId 文件ID
 * @returns Promise
 */
export function download(fileId: string) {
    return request({
        url: `minio/download/${fileId}`,
        method: "post",
        responseType: "blob"
    });
}

/**
 * 已删除删除文件请求
 * @param data 数据
 * @returns Promise
 */
export function reqDeleteFile(data:any) {
    return request({
        url: `merge/deleteSumFile`,
        method: "post",
        data
    });
}

/**
 * 根据文件ID恢复文件
 * @param fileId 文件ID
 * @returns Promise
 */
export function recoverByFileId(fileId: string){
    return request({
        url: `merge/recover/${fileId}`,
        method: "get",
    })
}

/**
 * 重命名文件
 * @param data 重命名文件的数据
 * @returns 返回请求结果
 */
export function renameFile(data: any) {
    return request({
        url: `merge/rename`,
        method: "put",
        data,
    });
}






